home *** CD-ROM | disk | FTP | other *** search
-
-
-
- IIIINNNNEEEETTTT((((3333NNNN)))) IIIINNNNEEEETTTT((((3333NNNN))))
-
-
-
- NNNNAAAAMMMMEEEE
- inet_aton, inet_addr, inet_network, inet_isaddr, inet_ntoa,
- inet_makeaddr, inet_lnaof, inet_netof - Internet address manipulation
- routines
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ####iiiinnnncccclllluuuuddddeeee <<<<ssssyyyyssss////ttttyyyyppppeeeessss....hhhh>>>>
- ####iiiinnnncccclllluuuuddddeeee <<<<nnnneeeettttiiiinnnneeeetttt////iiiinnnn....hhhh>>>>
- ####iiiinnnncccclllluuuuddddeeee <<<<aaaarrrrppppaaaa////iiiinnnneeeetttt....hhhh>>>>
-
- iiiinnnntttt iiiinnnneeeetttt____aaaattttoooonnnn((((ccccoooonnnnsssstttt cccchhhhaaaarrrr ****ccccpppp,,,, ssssttttrrrruuuucccctttt iiiinnnn____aaaaddddddddrrrr ****ppppiiiinnnn))));;;;
-
- uuuunnnnssssiiiiggggnnnneeeedddd lllloooonnnngggg iiiinnnneeeetttt____aaaaddddddddrrrr((((ccccoooonnnnsssstttt cccchhhhaaaarrrr ****ccccpppp))));;;;
-
- uuuunnnnssssiiiiggggnnnneeeedddd lllloooonnnngggg iiiinnnneeeetttt____nnnneeeettttwwwwoooorrrrkkkk((((ccccoooonnnnsssstttt cccchhhhaaaarrrr ****ccccpppp))));;;;
-
- iiiinnnntttt iiiinnnneeeetttt____iiiissssaaaaddddddddrrrr((((ccccoooonnnnsssstttt cccchhhhaaaarrrr ****ccccpppp,,,, uuuuiiiinnnntttt33332222____tttt ****aaaaddddddddrrrr))));;;;
-
- cccchhhhaaaarrrr ****iiiinnnneeeetttt____nnnnttttooooaaaa((((ssssttttrrrruuuucccctttt iiiinnnn____aaaaddddddddrrrr iiiinnnn))));;;;
-
- ssssttttrrrruuuucccctttt iiiinnnn____aaaaddddddddrrrr iiiinnnneeeetttt____mmmmaaaakkkkeeeeaaaaddddddddrrrr((((iiiinnnntttt nnnneeeetttt,,,, iiiinnnntttt llllnnnnaaaa))));;;;
-
- uuuunnnnssssiiiiggggnnnneeeedddd lllloooonnnngggg iiiinnnneeeetttt____llllnnnnaaaaooooffff((((ssssttttrrrruuuucccctttt iiiinnnn____aaaaddddddddrrrr iiiinnnn))));;;;
-
- uuuunnnnssssiiiiggggnnnneeeedddd lllloooonnnngggg iiiinnnneeeetttt____nnnneeeettttooooffff((((ssssttttrrrruuuucccctttt iiiinnnn____aaaaddddddddrrrr iiiinnnn))));;;;
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- The routines _i_n_e_t__a_t_o_n, _i_n_e_t__a_d_d_r and _i_n_e_t__n_e_t_w_o_r_k interpret character
- strings representing numbers expressed in the Internet standard "." (dot)
- notation. The _i_n_e_t__a_t_o_n routine interprets the specified character
- string as an Internet address, placing the address into the structure
- provided. It returns 1 if the string was successfully interpreted, or 0
- if the string is invalid. The _i_n_e_t__a_d_d_r and _i_n_e_t__n_e_t_w_o_r_k functions
- return numbers suitable for use as Internet addresses and Internet
- network numbers, respectively. To determine if an ASCII string is a
- valid representation of an IPv4 address, the function _i_n_e_t__i_s_a_d_d_r may be
- used. It takes a pointer to the string, cp, and returns a 1 if the
- address is valid, 0 otherwise. Additionally, if the addr parameter is
- non-NULL, the converted address will be stored at the address pointed to
- by addr. The routine _i_n_e_t__n_t_o_a takes an Internet address and returns an
- ASCII string representing the address in "." notation. The routine
- _i_n_e_t__m_a_k_e_a_d_d_r takes an Internet network number and a local network
- address and constructs an Internet address from it. The routines
- _i_n_e_t__n_e_t_o_f and _i_n_e_t__l_n_a_o_f break apart Internet host addresses, returning
- the network number and local network address part, respectively.
-
- All Internet addresses are returned in network order (bytes ordered from
- left to right). All network numbers and local address parts are returned
- as machine format integer values.
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- IIIINNNNEEEETTTT((((3333NNNN)))) IIIINNNNEEEETTTT((((3333NNNN))))
-
-
-
- IIIINNNNTTTTEEEERRRRNNNNEEEETTTT AAAADDDDDDDDRRRREEEESSSSSSSSEEEESSSS
- Values specified using the "." notation take one of the following forms:
- a.b.c.d
- a.b.c
- a.b
- a
- When four parts are specified, each is interpreted as a byte of data and
- assigned, from left to right, to the four bytes of an Internet address.
-
- When a three part address is specified, the last part is interpreted as a
- 16-bit quantity and placed in the right most two bytes of the network
- address. This makes the three part address format convenient for
- specifying Class B network addresses as "128.net.host".
-
- When a two part address is supplied, the last part is interpreted as a
- 24-bit quantity and placed in the right most three bytes of the network
- address. This makes the two part address format convenient for
- specifying Class A network addresses as "net.host".
-
- When only one part is given, the value is stored directly in the network
- address without any byte rearrangement.
-
- All numbers supplied as "parts" in a "." notation may be decimal, octal,
- or hexadecimal, as specified in the C language (i.e., a leading 0x or 0X
- implies hexadecimal; otherwise, a leading 0 implies octal; otherwise, the
- number is interpreted as decimal).
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- The constant IIIINNNNAAAADDDDDDDDRRRR____NNNNOOOONNNNEEEE is returned by _i_n_e_t__a_d_d_r and _i_n_e_t__n_e_t_w_o_r_k for
- malformed requests.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- gethostbyname(3N), getnetent(3N), hosts(4), networks(4)
-
- BBBBUUUUGGGGSSSS
- The value IIIINNNNAAAADDDDDDDDRRRR____NNNNOOOONNNNEEEE (0xffffffff) is a valid broadcast address, but
- _i_n_e_t__a_d_d_r cannot return that value without indicating failure. The newer
- _i_n_e_t__a_t_o_n function does not share this problem.
-
- The string returned by _i_n_e_t__n_t_o_a resides in a static memory area. Thus
-
- printf("%s %s0, inet_ntoa(addr1), inet_ntoa(addr2));
-
- will print the same address twice.
-
- Inet_addr should return a struct in_addr.
-
- The problem of host byte ordering versus network byte ordering is
- confusing.
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- IIIINNNNEEEETTTT((((3333NNNN)))) IIIINNNNEEEETTTT((((3333NNNN))))
-
-
-
- A simple way to specify Class C network addresses in a manner similar to
- that for Class B and Class A is needed.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-